In the field of computing there is often a need to prove an identity of a user. For example, a user may need to electronically sign a contract, to make an online payment, to contribute an electronic vote, to access a network service, and so on. Digital signatures are one way in which a user may prove his or her identity. A digitally signed message or document can be verified as originating from a particular individual or group of individuals.
To generate the digital signature a user typically requires a smart-card and reader or other suitably-adapted electronic device to hold a private signing key. However, in certain situations a user may not have access to a smart card or electronic device; for example, they may be on holiday, they may be away from a home or office, or they may not be able to safely carry additional items. There is thus a need for a user to be able to electronically identify themselves in these situations.